package tw.asap.plus.network.service;

import java.util.List;

import retrofit.http.Body;
import retrofit.http.POST;
import tw.asap.plus.entity.request.GoodsItemRequest;
import tw.asap.plus.entity.request.LocationBean;
import tw.asap.plus.entity.request.ShopKey;
import tw.asap.plus.entity.request.ShopRequestBean;
import tw.asap.plus.entity.request.ShopSearchBean;
import tw.asap.plus.entity.response.GoodsDetail;
import tw.asap.plus.entity.response.GoodsDetailNV;
import tw.asap.plus.entity.response.GoodsInfo;
import tw.asap.plus.entity.response.GoodsInfoNV;
import tw.asap.plus.entity.response.ResponseDataWrapper;
import tw.asap.plus.entity.response.ShopIndex;
import tw.asap.plus.entity.response.ShopInfo;

/**
 * Description:
 * Created:      [15/11/9]
 * Author:       [Yang]
 **/
public interface MerchantService {

    @POST("/app/merchant/index")
    ResponseDataWrapper<ShopIndex> getIndexInfo(@Body LocationBean location);

    @POST("/app/shop/shoplist")
    ResponseDataWrapper<List<ShopIndex.ShopEntity>> getMerchantList(@Body ShopRequestBean shopRequestBean);

    @POST("/app/shop/shopsearch")
    ResponseDataWrapper<List<ShopIndex.ShopEntity>> searchGoods(@Body ShopSearchBean shopRequestBean);

    @POST("/app/shop/shopname_search")
    ResponseDataWrapper<List<ShopIndex.ShopEntity>> searchShop(@Body ShopSearchBean shopRequestBean);

    @POST("/app/shop/info_get")
    ResponseDataWrapper<ShopInfo> getShopInfo(@Body ShopKey shopKey);

    @POST("/app/shop/item_list")
    ResponseDataWrapper<List<GoodsInfo>> getGoodsList(@Body ShopKey shopKey);

    @POST("/app/shop/item_detail")
    ResponseDataWrapper<GoodsDetail> getGoodsDetail(@Body GoodsItemRequest goodsItemRequest);

    @POST("/app/shop/item_list")
    ResponseDataWrapper<List<GoodsInfoNV>> getNewGoodsList(@Body ShopKey shopKey);

    @POST("/app/shop/item_detail")
    ResponseDataWrapper<GoodsDetailNV> getNewGoodsDetail(@Body GoodsItemRequest goodsItemRequest);
}
